package pe.gob.osinergmin.utils;

import android.content.Context;
import android.content.SharedPreferences;

import java.util.List;

import pe.gob.osinergmin.bean.SupervisionMovil;
import pe.gob.osinergmin.bean.SupervisionMovilDetalleSeguridad;

public class PuntoControlDetalleSeguridadControl {

    private static final String PREFS_NAME ="detalleSeguridadState";

    private static final String DETALLE_SEGURIDAD_LIST = "DETALLE_SEGURIDAD_LIST";

    private static final String SUPERVISION_SEGURIDAD = "SUPERVISION_SEGURIDAD";

    private SharedPreferences detalleSeguridadControlPrefs;

    public PuntoControlDetalleSeguridadControl(Context context) {
        this.detalleSeguridadControlPrefs = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
    }

    public void saveDetalleSeguridadList(SupervisionMovil supervisionMovil, List<SupervisionMovilDetalleSeguridad> supervisionMovilDetalleSeguridadList){
        SharedPreferences.Editor editor = detalleSeguridadControlPrefs.edit();
        editor.putString(DETALLE_SEGURIDAD_LIST, PuntoControlUtils.convertFromListToJsonString(supervisionMovilDetalleSeguridadList));
        editor.putString(SUPERVISION_SEGURIDAD, supervisionMovil.toString());
        editor.commit();
    }

    public List<SupervisionMovilDetalleSeguridad> getDetalleSeguridadList(){
        List detalleSeguridadList = PuntoControlUtils.convertFromJsonStringToList(detalleSeguridadControlPrefs.getString(DETALLE_SEGURIDAD_LIST,"[]"));
        return detalleSeguridadList;
    }

    public SupervisionMovil getSupervisionMovil(){
        SupervisionMovil supervisionMovil = (SupervisionMovil)PuntoControlUtils.convertFromJsonStringToObject(detalleSeguridadControlPrefs.getString(SUPERVISION_SEGURIDAD,""));
        return supervisionMovil;
    }

    public void clear(){
        SharedPreferences.Editor editor = detalleSeguridadControlPrefs.edit();
        editor.clear();
    }
}
